// =============================================================================
// SCSS/SITE/STACKS/ICON/_TYPE.SCSS
// -----------------------------------------------------------------------------
// Headings, body text, lists, blockquotes, abbreviations, addresses and more
// for a versatile and durable typography system/
// =============================================================================

// =============================================================================
// TABLE OF CONTENTS
// -----------------------------------------------------------------------------
//   01. Body Text
//   02. Emphasis
//   03. Headings
//   04. Lists
//   05. Miscellaneous
// =============================================================================

// Body Text
// =============================================================================

p {
  margin: 0 0 $baseMargin;
}



// Emphasis
// =============================================================================

small {
  font-size: 0.8em;
}

b,
strong {
  font-weight: 700;
}

em {
  font-style: italic;
}

cite {
  font-style: normal;
}



// Headings
// =============================================================================

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin: 1.25em 0 0.2em;
  font-family: $headingsFontFamily;
  font-weight: $headingsFontWeight;
  letter-spacing: -1px;
  text-rendering: optimizelegibility;  
  color: $headingsColor;

  small {
    font-weight: normal;
    line-height: 1;
    color: $grayLight;
  }

  a {
    color: $headingsColor;

    &:hover {
      color: $accentColor;
    }
  }
}

h1,
.h1 {
  margin-top: 1em;
  font-size: 400%;
  line-height: 1.1;
}

h2,
.h2 {
  font-size: 285.7%;
  line-height: 1.2;
}

h3,
.h3 {
  font-size: 228.5%;
  line-height: 1.3;
}

h4,
h5,
h6,
.h4,
.h5,
.h6 {
  margin-top: 1.75em;
  margin-bottom: 0.5em;
  line-height: 1.4;
}

h4,
.h4 {
  font-size: 171.4%;
}

h5,
.h5 {
  font-size: 150%;
}

h6,
.h6 {
  font-size: 100%;
  text-transform: uppercase;
}



// Lists
// =============================================================================

//
// Unordered and ordered lists.
//

ul,
ol {
  padding: 0;
  margin: 0 0 $baseMargin 1.655em;
}

ul ul,
ul ol,
ol ol,
ol ul {
  margin-bottom: 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li {
  line-height: $baseLineHeight;
}

ul.unstyled,
ol.unstyled {
  margin-left: 0;
  list-style: none;
}

ul.inline,
ol.inline {
  margin-left: 0;
  list-style: none;

  & > li {
    display: inline-block;
    padding-left: 1em;
    padding-right: 1em;
  }
}


//
// Description lists.
//

dl {
  margin-bottom: $baseMargin;
}

dt,
dd {
  line-height: $baseLineHeight;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: $baseMargin;
}



// Miscellaneous
// =============================================================================

//
// Horizontal rules.
//

hr {
  margin: $baseMargin 0;
  border: 0;
  border-top: 1px solid $baseBorderSolid;
  border-top: 1px solid $baseBorderRgba;
  border-bottom: 1px solid transparent;
}


//
// Abbreviations and acronyms.
//

abbr[title] {
  cursor: help;
  border-bottom: 1px dotted $grayLight;
}

abbr.initialism {
  font-size: .9em;
  text-transform: uppercase;
}


//
// Blockquotes.
//

blockquote {
  margin: $baseMargin 0;
  border: 1px solid $baseBorderSolid;
  border: 1px solid $baseBorderRgba;
  padding: 1em;
  font-family: $altFontFamily;
  font-size: 150%;
  font-weight: 400;
  line-height: 1.3;
  color: $headingsColor;
}


//
// Quotes.
//

q:before,
q:after,
blockquote:before,
blockquote:after {
  content: "";
}


//
// Addresses.
//

address {
  display: block;
  margin-bottom: $baseMargin;
  font-style: normal;
  line-height: $baseLineHeight;
}